package de.fhb.fitmeier.dbhibernate.persistence;
// Generated 10.03.2012 17:17:31 by Hibernate Tools 3.4.0.CR1


import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;

/**
 * Stammkunde generated by hbm2java
 */
@Entity
@Table(name="Stammkunde")
public class Stammkunde  implements java.io.Serializable {


     private int kundennummer;
     private Kunde kunde;
     private Bank bank;
     private Long kontonummer;
     private String zahlungsfrist;
     private String sammelrechnung;
     private byte anzMahnungen;
     private boolean geprueft;

    public Stammkunde() {
    }

	
    public Stammkunde(Kunde kunde, String zahlungsfrist, String sammelrechnung, byte anzMahnungen, boolean geprueft) {
        this.kunde = kunde;
        this.zahlungsfrist = zahlungsfrist;
        this.sammelrechnung = sammelrechnung;
        this.anzMahnungen = anzMahnungen;
        this.geprueft = geprueft;
    }
    public Stammkunde(Kunde kunde, Bank bank, Long kontonummer, String zahlungsfrist, String sammelrechnung, byte anzMahnungen, boolean geprueft) {
       this.kunde = kunde;
       this.bank = bank;
       this.kontonummer = kontonummer;
       this.zahlungsfrist = zahlungsfrist;
       this.sammelrechnung = sammelrechnung;
       this.anzMahnungen = anzMahnungen;
       this.geprueft = geprueft;
    }
   
     @GenericGenerator(name="generator", strategy="foreign", parameters=@Parameter(name="property", value="kunde"))@Id @GeneratedValue(generator="generator")

    
    @Column(name="Kundennummer", unique=true, nullable=false)
    public int getKundennummer() {
        return this.kundennummer;
    }
    
    public void setKundennummer(int kundennummer) {
        this.kundennummer = kundennummer;
    }

@OneToOne(fetch=FetchType.LAZY)@PrimaryKeyJoinColumn
    public Kunde getKunde() {
        return this.kunde;
    }
    
    public void setKunde(Kunde kunde) {
        this.kunde = kunde;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="BLZ")
    public Bank getBank() {
        return this.bank;
    }
    
    public void setBank(Bank bank) {
        this.bank = bank;
    }

    
    @Column(name="Kontonummer", precision=10, scale=0)
    public Long getKontonummer() {
        return this.kontonummer;
    }
    
    public void setKontonummer(Long kontonummer) {
        this.kontonummer = kontonummer;
    }

    
    @Column(name="Zahlungsfrist", nullable=false, length=3)
    public String getZahlungsfrist() {
        return this.zahlungsfrist;
    }
    
    public void setZahlungsfrist(String zahlungsfrist) {
        this.zahlungsfrist = zahlungsfrist;
    }

    
    @Column(name="Sammelrechnung", nullable=false, length=2)
    public String getSammelrechnung() {
        return this.sammelrechnung;
    }
    
    public void setSammelrechnung(String sammelrechnung) {
        this.sammelrechnung = sammelrechnung;
    }

    
    @Column(name="AnzMahnungen", nullable=false, precision=2, scale=0)
    public byte getAnzMahnungen() {
        return this.anzMahnungen;
    }
    
    public void setAnzMahnungen(byte anzMahnungen) {
        this.anzMahnungen = anzMahnungen;
    }

    
    @Column(name="Geprueft", nullable=false)
    public boolean isGeprueft() {
        return this.geprueft;
    }
    
    public void setGeprueft(boolean geprueft) {
        this.geprueft = geprueft;
    }




}


